package cn.tedu.controller;

import cn.tedu.pojo.Student;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.util.Arrays;

@RestController
@RequestMapping("stu")
public class StudentController {
    @RequestMapping("add")
    public Object add(Student s) throws Exception {
        // 实现数据入库
        /**
         * step 1. 操作cgb2106的库，创建tb_student表
         * step 2. 修改pom，添加jar包的坐标
         * step 3. 写jdbc的代码
         */
        // 注册驱动
        Class.forName("com.mysql.jdbc.Driver");

        // 获取连接
        //String url= "jdbc:mysql://localhost:3306/cgb2106?characterEncoding=utf8";//指定要连接哪个数据库
        String url = "jdbc:mysql:///cgb2106?characterEncoding=utf8";//指定要连接哪个数据库，本地主机和默认端口号可以省略
        Connection conn = DriverManager.getConnection(url, "root", "root");

        // 获取高级传输器
        String sql = "insert into tb_student values(null,?,?,?,?,?,?)";
        PreparedStatement ps = conn.prepareStatement(sql);

        // 给SQL设置参数
        ps.setObject(1, s.getName());
        ps.setObject(2, s.getAge());
        ps.setObject(3, s.getSex());
        ps.setObject(4, Arrays.toString(s.getHobby())); // 注意：数组类型必须转成数据库能识别的字符串
        ps.setObject(5, s.getEdu());
        ps.setObject(6, s.getIntime());

        // 执行SQL
        ps.executeUpdate(); // 执行增删改的SQL executeQuery()是执行查询的SQL

        System.out.println("数据插入成功！");


        return s;
    }
}
